{
 "cells": [
  {
   "cell_type": "code",
   "execution_count": 1,
   "id": "044c1e2e-05d5-4f42-9d6f-fcf9936caad4",
   "metadata": {},
   "outputs": [],
   "source": [
    "from sklearn.datasets import load_iris\n",
    "from sklearn.model_selection import train_test_split\n",
    "x,y=load_iris().data[:,2:4],load_iris().target\n",
    "x_train,x_test,y_train,y_test=train_test_split(x,y,random_state=1,test_size=50)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 3,
   "id": "62bde383-4dd4-4c65-8867-1004d4b7c861",
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "模型预测准确率:  0.98\n"
     ]
    }
   ],
   "source": [
    "from sklearn.linear_model import LogisticRegression\n",
    "from sklearn.metrics import accuracy_score\n",
    "model=LogisticRegression()\n",
    "model.fit(x_train,y_train)\n",
    "ac=accuracy_score(y_test,model.predict(x_test))\n",
    "print(\"模型预测准确率: \",ac)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 12,
   "id": "a0136e48-f21b-4ffe-9f27-6f045e66a6b0",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "iVBORw0KGgoAAAANSUhEUgAAAjgAAAGyCAYAAADptr7VAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjguNCwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy8fJSN1AAAACXBIWXMAAA9hAAAPYQGoP6dpAABCCUlEQVR4nO3deXRU9f3/8deQlYQsIgoqQcLSKiAqCATaAiqLVUBKqYK4gf2J0FIWwRIEXKqi54uA1ip1RSiCKCgVy1aJCApokLUEEFkEJDZgmEkgTLb7+yPNSEgmmUlm5s7ceT7OydG587n3vi+t5uXn3vt52wzDMAQAAGAh9cwuAAAAwNcIOAAAwHIIOAAAwHIIOAAAwHIIOAAAwHIIOAAAwHIIOAAAwHIIOAAAwHIIOAAAwHJMDTinTp3SF198oZMnT5pZBgAAsBjTAs7ixYvVqlUr/eEPf1CzZs20ePHiGvdZv369rr76ajVq1EizZs0KQJUAACAUmRJwTp8+rTFjxmjDhg3atm2b/v73v+vPf/5ztfvk5ORowIABGjp0qDZt2qSFCxcqIyMjQBUDAIBQEmnGSfPy8jRnzhy1a9dOknTttdcqNze32n0WLlyoyy67TNOmTZPNZtP06dP1xhtv6MYbb/TonKWlpfr++++VkJAgm81W52sAAAD+ZxiG8vLydPnll6tePc/nZWxmdxMvKirSAw88oHr16mnevHluxw0fPlz169fXyy+/LEk6ceKEbr75Zu3Zs6fK8U6nU06n0/X5+PHjatOmjU9rBwAAgXH06FE1bdrU4/GmzOCU27Fjh2688UZFR0dr79691Y51OBwVAkpiYqKOHz/udvyMGTP0xBNPVNr+9w/fU/34uNoXDfjA7Z9sCPg537kyPeDnBIC6KihwaMKEFCUkJHi1n6kBp3379vrkk080ceJEDR8+XB988IHbsZGRkYqJiXF9jo2N1dmzZ92OT09P14QJE1yfHQ6HUlJSVD8+TnHx8b65AKCWEmNjA37O+vUTA35OAPAVbx8vMfU1cZvNpuuvv17z5s3T8uXLq30Op2HDhsrJyXF9zsvLU3R0tNvxMTExSkxMrPADhLP7Dlee0QQAqzIl4Kxbt06TJk1yfY6MLJtIqu7hoU6dOmnz5s2uz9u3b9cVV1zhvyIBCyLkAAgXpgScq666Sn//+9/16quv6ujRo5o8ebL69OmjpKQkORwOFRUVVdpnwIAB2rhxozIyMlRcXKyZM2eqb9++JlQPAACCnSkB5/LLL9d7772nOXPmqG3btjp79qwWLFggqey5nI8//rjSPo0aNdLzzz+vvn376rLLLtPu3bs1derUQJcOhDxmcQCEA9NfE/fWgQMHlJWVpR49enj1XI3D4VBSUpLmr/2Yh4xhut+u+dTsEvR288fMLgEAalRQ4NCoUUmy2+1e/d439S2q2mjVqpVatWpldhkAACCI0U0cCFPcqgJgZQQcAABgOQQcIIwxiwPAqgg4QJgj5ACwIgIOAACwHAIOAGZxAFgOAQeAJEIOAGsh4AAAAMsh4ABwYRYHgFUQcABUQMgBYAUEHAAAYDkEHACVMIsDINQRcABUiZADIJQRcAAAgOUQcAC4xSwOgFBFwAEAAJZDwAFQLWZxAIQiAg6AGhFyAIQaAg4AALAcAg4AjzCLAyCUEHAAeIyQAyBUEHAAAIDlEHAAEyzt09PsEmqNWRwAoYCAA8BrhBwAwY6AAwAALIeAA6BWmMUBEMwIOABqjZADIFgRcAAAgOUQcADUCbM4AIIRAQdAnRFyAAQbAg4AALAcAg4An2AWB0AwIeAAAADLIeAA8BlmcQAECwIOAJ8i5AAIBgQcAABgOQQcAD7HLA4AsxFwAPgFIQeAmQg4AADAcgg4APyGWRwAZiHgAPArQg4AMxBwAACA5RBwAPgdszgAAo2AAyAgCDkAAomAAwAALIeAAyBgmMUBECgEHAABRcgBEAgEHAAAYDmmBZzly5erRYsWioyMVJcuXZSVlVXjPv3795fNZnP99OrVKwCVAvA1ZnHCQ3a2dPiw+5/s7Lofa+tW6Ysvyv5a13PAWiLNOOm3336r4cOHa+7cuerRo4fGjBmj3//+9/r888+r3W/r1q3atWuXmjZtKkmKiooKRLkAAC9lZ0uTJ9c87tlnpSZNfHOsupwD1mPKDE5WVpaeeeYZ3XHHHWrcuLFGjRqlzMzMavc5duyYDMNQu3btlJycrOTkZMXHxweoYgC+xiyOtZ0757txnh7LX/sjNJkScPr166eHHnrI9Xnfvn1q1apVtft8+eWXKikpUdOmTRUfH68hQ4YoNzfX36UC8CNCDgB/Mf0h48LCQs2cOVOjR4+udtz+/fvVsWNHrV69WpmZmTp8+LCmTJnidrzT6ZTD4ajwAwAAwoPpAWfq1Klq0KCBHnzwwWrHTZ48WStXrlTbtm119dVX67nnntP777/vdvyMGTOUlJTk+klJSfF16QB8gFkcAP5gasBZu3at5s6dq3feecfrB4aTk5N18uRJOZ3OKr9PT0+X3W53/Rw9etQXJQPwA0IOAF8zLeAcPHhQw4YN0yuvvKI2bdrUOH7w4MHavHmz6/NXX32lJk2aKCYmpsrxMTExSkxMrPADAADCgykBp6CgQP369dPAgQN1++23Kz8/X/n5+TIMQw6HQ0VFRZX2ad++vcaPH68tW7ZoxYoVmjZtWo3P7QAIHcziAPAlUwLO6tWrlZWVpddee00JCQmunyNHjqh9+/b6+OOPK+2Tnp6uNm3aqHfv3ho3bpxGjRql9PR0E6oH4C+EHOuIjfXdOE+P5a/9EZpshmEYZhcRCA6HQ0lJSZq/9mPFsX4OgsRv13xqdglB5+3mj5ldAnwkO7v6NWhiYz1fgM/dsU6dkpxOKSZGuvjiup0DwamgwKFRo5Jkt9u9etzElJWMAcCd+w4/QcixCF8GC3fHat7cd+eAtRBwAAQdQo73fDlb4q3du6XqlhpLTJTatfPPuQF3CDgAEOJ82ffJW7t3SzNn1jxu4kRCDgLL9IX+AKAqPHDsOV/2ffKWp4vEs5g8Ao2AAwAALIeAAyBoMYsDoLYIOACCGiEHQG0QcAAAgOUQcAAEPWZxAHiLgAMgJBByAHiDgAMAIc6XfZ+85enK+V6ssA/4BAv9AQgZrHBctSZNyhbxM2Ml43btyhbxYyVjBBsCDoCQQsipmpkNJQkvCEbcogIAAJbDDA6AkMMsTmXumm2eOiU5nVJMjHTxxTVvL/9Oqry9nKe3u2rTANTbfcxsMuorVriGYETAARCSCDk/8bTZpi/V1LizNg1Avd3HzCajvmKFawhW3KICgBDnjyaadT1nbRqAeruPmU1GfcUK1xCsCDgAQhZr4wBwh4ADIKQRcgBUhYADAAAsh4ADIOQxiwPgQgQcAABgOQQcAJbALA6A8xFwAFhGuIYcfzTRrOs5a9MA1Nt9zGwy6itWuIZgZTMMwzC7iEBwOBxKSkrS/LUfKy4+3uxyAEnSb9d8anYJlhOui/+xknHdajWTFa7BnwoKHBo1Kkl2u12JXrSlZyVjAJYSriscu/sF2Ly5d9tr+s4btfml7O0+VvjFb4VrCEYEHACWE64hxyzhOOtSHatfX6gg4AAAai0c+0dVx+rXF0p4yBiAJYXrA8eBFo79o6pj9esLJQQcAJZFyAHCFwEHAABYDgEHgKUxiwOEJwIOAMsj5ADhh4ADAAAsh4ADmGhpn55mlxA2mMUBwgsBBwBQa+HYP6o6Vr++UEIvKsBk9KMKLFY49j1WMq7I6tcXaPSiAgAP0MbB98Kxf1R1rH59oYKAAwCowFedyavrWC75ppu4mUKp1nBEwAEQdpjFcc/TXkq+cn5PplDq4xRKtYYrHjIGEJZ4q6pqge6RdP75QqmPUyjVGq4IOAAAwHIIOADCFrM4gHURcACENUIOYE0EHAAAYDkEHABhj1kcwHoIOAAgQg5gNQQcAIBLoHsknX++UOrjFEq1hit6UQEmoxdVcGEBQFYy9lQo1RrK6EUFAD7AKsfufyk3b+6b7bU5dzAKpVrDEbeoAACA5TCDAwAXCIZZHDNvE4UrX91y4tZVcDAt4Cxfvlzjx4/Xd999p44dO2revHm6+uqrq91n/fr1euihh5STk6MpU6ZowoQJAaoWAALHzIaX4cpXzTNpwhk8TLlF9e2332r48OF69tlndfz4cV155ZX6/e9/X+0+OTk5GjBggIYOHapNmzZp4cKFysjICFDFAMKNma+Nm9nwMlz5qnkmTTiDhykBJysrS88884zuuOMONW7cWKNGjVJmZma1+yxcuFCXXXaZpk2bptatW2v69Ol64403AlQxgHDE2jhA6DLlFlW/fv0qfN63b59atWpV7T47duzQTTfdJJvNJknq3Lmz0tPT3Y53Op1yOp2uzw6How4VAwCAUGL6W1SFhYWaOXOmRo8eXe04h8Oh1NRU1+fExEQdP37c7fgZM2YoKSnJ9ZOSkuKzmgGED2ZxgNBkesCZOnWqGjRooAcffLDacZGRkYqJiXF9jo2N1dmzZ92OT09Pl91ud/0cPXrUZzUDCC+EHCD0mPqa+Nq1azV37lxt3rxZUVFR1Y5t2LChcnJyXJ/z8vIUHR3tdnxMTEyFQAQAAMKHaTM4Bw8e1LBhw/TKK6+oTZs2NY7v1KmTNm/e7Pq8fft2XXHFFf4sEQBcmMUBQospAaegoED9+vXTwIEDdfvttys/P1/5+fkyDEMOh0NFRUWV9hkwYIA2btyojIwMFRcXa+bMmerbt68J1QMIV4EKOWY2vAxXvmqeSRPO4GHKLarVq1crKytLWVlZeu2111zbDx06pJ49e2rOnDkaOHBghX0aNWqk559/Xn379lVSUpLi4+N5TRyAJTVpUrYQHCsZB051f+blPPmz8tVxUHch1038wIEDysrKUo8ePbzqKko3cQQruomHHrPbOADhJGy6ibdq1arGNXMAwJ/M7FXlrs/Rt99KZ85IUVFSUlLl7xMTpXbtaj5OuVCZZbDKdcD3Qi7gAEC4qmuPqokTy0KOVfolWeU64B+mr4MDAKHIjLeq6tq/qHxBd6v0S7LKdcA/CDgAAMByCDgAUEusjQMELwIOANQBIQcITgQcwGRL+/Q0uwQAsBwCDgDUEbM4QPAh4ACADxBygOBCwAGAEFHX/kXli8BapV+SVa4D/hFyrRpqi1YNCGa0a7AOf69wzErGFVnlOuBe2LRqAIBg5u82Du5+WTdv7pvjhBqrXAd8j4ADACbavfunFYbPd+yYVFAg1a8vNW1a+XszZmTc1Wq3S0VFUny81LJlzeeuTa2+uj5mfMIHAQcAfMzTWZzdu6WZM2t/nkD2lqprreXnrk2tvro+eleFFx4yBgA/8OStqqpmQ7wRyN5Sda21/Ny1qdVX10fvqvBCwAEAAJZDwAEAP2FtHMA8BBwA8CNCDmAOAg4AALAcAg4A+BmzOEDgEXAAAIDlEHAAIACqmsXxYtX5KgWyt1Rday0/d21q9dX10bsqvNCLCggC9KIKHxcuAMhKxp7VykrG4YteVAAQgs4PKXURiF/KZtbqq+sjvIQPblEBQADxwDEQGMzgAICXvjnVUHnOaLffJ8QUqvXFP7r93t8dxwEQcADAK9+caqif/XVMjeP2j/lrtSGnLiLP5avN6tn62aevqv7p71WQfLn293xQe/qOV3FsA7+cEwg13KICAC9UN3Pjzbja3qqKPJevvjN66NoPH1d87jHVM0oVn3tM1374uPrO6KHIc/m1Oi5gNQQcADBJbUJOm9Wz1fC77apnlFbYXs8oVcPvtqvN6tm+Kg8IaV4FnPPfKD9z5ozbcePGjVNhYWHtqwIAVOlnn75aKdyUsxml+tmnrwa4IiA4eRVwGjZsKElyOp3q0qVLlWNyc3P1yiuvKCIiou7VAYDFeTuLU//0926/s9XwPRBOvAo48fHxKi0tlc1mU1RUlCSpqKhI6enpOn36tCTpxIkTuuqqqwg4AOAhb0JOQfLlbr8zavgeCCdeBZyoqCjNnTtXsbGx2rlzpyIiIjR27Fh98MEH6tixo7Zu3apt27apa9eu/qoXAMLa/p4PqtRW9b+6DVs97e/5YIArAoKTVwHHZrPp//2//6f8/Hxdc8012r17twzDUFxcnBYtWqQ777xTL730km699VZ/1QsAluTpLM6evuP1Y7PrVGqrp/KnIg1JpbZ6+rHZddrTd7zfagRCiUcB58iRIxo9erTsdruioqIUFxenevXqKSYmxjWmc+fOGjt2rDIzM9WnTx+/FQwAZkqI8ewFCk/Heas4toFWp6/XjoGP6+xFTVVqq6ezFzXVjoGPa3X6etbBAf7Ho4X+Dh8+rO+//17R0dGuZ3AutHbtWs2ePVtpaWn67LPPCDkALKn1xT9q/5i/1mklY3c8XeG4OLaBdt4+TTtvn+b1OYBw4VHA6dGjh3r06KHU1FQtXrxYd999t2w2m1q3bq0HH3xQ+fn5mjp1qlauXKlDhw7p3XffJeAAsCx/rVAs0cYB8BWvWzXccccdGjBggLp166YtW7bIMAxdd911+uKLLxQREaErr7xS48dzDxgAULXsbOncOfffx8bS9Rt151XAsdlsioyMVGRkpJKSklS/fn1JZaGn/LXw2NhY1atXT6dPn1ZycrLPCwaAoOB0Sps3S1u3Snl5UkKC1LGjlJYmnfd8Ym3G13YWJxR6VGVnS5Mn1zzu2WcJOagbm3H+8sQ1uPzyyzVo0CBX0ImNjVWjRo10+eWXq2nTpurYsaPi4uK0dOlS3X777YqMDJ5eng6HQ0lJSZq/9mPFxcebXQ5QwW/XfGp2CfCG0ynNm1f22/r8f4XabGW/le+/v2Jo8Xb8/3gTcsp7VF3YxqH87apgeQD58GHp8cdrHvf441Lz5v6tBaGhoMChUaOSZLfblZiY6PF+Xr0mPnHiRDVr1kwpKSlq0qSJYmNj9cMPP+hf//qXHnnkEV166aX69a9/rfj4+KAKNwDgU5s3Vw4rUtnn7Oyy7+syvhboUQVU5FUKmTBhQrXfOxwOvfXWW9q9e7duueWWOhUGAEFr69bKYaWcYZR936NH7cf/jze3qjzpUcVbVwgnPu0mnpiYqLFjx2rixIm+PCxgeUv79DS7BHgjL8+7770dfx5PFwCkRxVQkVcB5/nnn9eMGTP0/ffu/0G566679OGHH9a1LgAIXgkJ3n3v7fhaoEcVUJFXAWfWrFn65ptv5HQ63Y554IEHNHbs2DoXBgBBq2PHsgeEq2KzlX1fl/EX8GQWhx5VQEVedxN/88039eCDDyo7O1uSNHbsWE2ZMkXp6elatWqVbr75ZuXn5/ulWAAICmlpZW8/XRhayt+KSkur2/gq1BRy6FEFVFSrZ3D27t2ruLg4SdLixYsVExOj2NhYxcbGSpJrTRwAsKSYmLJXu3v2lBITy4JKYmLZ56pe+fZ2fC2ESo+q//2a8Nk4wB2v1sFp3bq1HnjgAc2YMUP33nuvJGn9+vXauXOnPvvsM0lSXl6e7rzzzqCbxWEdHAQ71sKBJ6zQxoGVjOGN2q6D4/Fr4qtWrVJBQYFatGihqKgotWvXToZhaP369ZKkJ598Uj/88INsNptGjx7t/RUAAGpkhV5VhBcEgkcB5x//+IdGjRqluLg43XHHHfrzn/+skSNHSpL+9re/acSIEfrVr36lESNGKCUlxeOTnzp1SjfccIMyMjLU3IMlK/v3768VK1a4Pt98883697//7fH5ACDUfXOqoQ5Xsf3UqbIFk2NipIsvrvw9syIINx4FnH79+ql379765S9/qXnz5un06dN68sknJZX1p+rUqZM2bNiga665RtOmTdPDDz9c4zFPnjyp/v376/Dhwx4Xu3XrVu3atUtNmzaVJEVFRXm8LwB43T+qOt99J82fLxUX/7QtMlIaOlQ6dqzyOTp0kL7+2rtz5+VJy5aV9TcwDH2j1vqZ9tf68unvhHDiUcA5v2lmvXr1ZLPZFBsbq/LHd0aNGqVRo0bpm2++Uffu3XXNNdeoT58+1R5zyJAhGjJkiDZ7uET5sWPHZBiG2rVr59F4AKigqn5QDof06afS3r3ePez73XfSm29W3l5cLC1YUHGbwyFlZEgbNkglJZ6fOy9PeuGFCgEqT3V7ULi6514Aq/HqLSqbzaZ7771XiYmJGjdunP785z/r2LFjGjFihEaMGKGlS5dqypQpeuaZZ2o81quvvurVejlffvmlSkpK1LRpU8XHx2vIkCHKzc31pnwA4cyX/aDmz/f+/MXF3p172bKKs0MAvFKr18T79++vU6dOSZIee+wxdenSRZ07d1bLli1166236vPPP9fp06erPUaLFi28Ouf+/fvVsWNHrV69WpmZmTp8+LCmTJnidrzT6ZTD4ajwAyCMedIPylO+DB7uzu3F7XsAlXnVbDMvL0/du3fXrbfeqssuu0ySKs3ClN+2+uqrr9S7d28flSlNnjxZkydPdn1+7rnnNHjwYL3yyitVjp8xY4aeeMKzHi4AwkAd+kH5XVXn9nwFDwBV8CrgvPLKKzIMwxVuqmKz2bRhwwalebAyZ10kJyfr5MmTcjqdiqnivnl6enqF7ucOh8OrN7wAWExCQtlzL9V9b5aqzm2zEXKAOvAq4AwcONCjcf4IN4MHD9bEiRNdx/7qq6/UpEmTKsONJMXExLj9DkAY6tix7KHeqkKDB/2gKoiM9N1tKnfnbt5cOnTIN+cAwpBXz+AUFhaqa9eu+uSTTyRJt956q2v7gAEDfFKQw+FQUVFRpe3t27fX+PHjtWXLFq1YsULTpk1jQUEAnvNBPyiX/63k7pXISO/OPWhQ2T4AasXjf3q+/vpr5ebmymaz6a233tKkSZN06tQpLVu2TKWlpTpw4ICWLVsmqewB36FDh9aqoPbt22vOnDmVZovS09N15MgR9e7dW5deeqlGjRql9PT0Wp0DQBgq7wfli3VwmjWTRozw7zo4CQnS2LEV1sFJUN1a4NDfCeHEo15UR48eVe/evbVgwQI9/PDD+uijj7Ry5UrNmDHDtd7NokWLdNddd6m0tFSFhYV68cUX/V68N+hFhWBHLyp44ptTDZXnjK60/Tt7olYmDWUlY1iOX3tRpaSk6Msvv1R8fLyKiop0991365ZbblFcXJz+7//+TyUlJSooKNCgQYM0ceJE/fWvf631hQAA3Gt98Y9Vbu9webbszQNbCxDMPL5FtXPnTn3++ee66aab1Lt3bxUWFqpdu3Z6/fXXtXPnTu3YsUN2u1133XWX2rdv78+aAQBVMKsRJ93BEYw8Djj16tXT4sWLde+992rnzp2Kjo5W9+7ddckll6hHjx5q3bq1nnzySb300ksaNmyYkpKS/Fk3gHDiyx5S3rqgH5RstrI3nAYNqvr1bne1tmsnrVhR9XGio312fYEOOdnZ0nlLlLlFHywEmscBp1u3bioqKtK2bdtc2y58fKe0tFQnT57U8ePHCTgAfMOXPaS8VUU/KBlG2evbL7xQ9hDw+SGnulozMioeu/w4c+aUPTSTkxP46/MBT/tb0QcLgebVO4g///nP1ahRIxmGIZvNpnr16ikqKkoNGzbU1Vdfreuvv17Z2dksqAfAdzzpIdWjh3/OXV0/qOLisu/vu8+zWt0pKZH++9/K2+twfWbdqgKCiVfr4AwfPlwJCQlKSUnRfffdp9OnT2vw4MGSpPnz52vkyJGaMGGCtnrT0wUAquPLHlLeqqkf1IXfV1drbdTh+u47TKsahDePZ3AMw1B0dLRyc3O1Z88eLVu2TP/973/18ssv6+DBg3I6nZo6daqysrJkt9v9WTOAcGJmD6mawsqF3/ujFjN7ZAEhzKMZnJMnT6pLly7617/+pQYNGmjx4sV69NFHVa9ePf3yl7/Uo48+qpdfflldunTR2rVrdcMNN/i7bgDhoqYeUf7sIXXhysM1fe+PWupwTGZxEM48CjiNGjXS/Pnzdccdd6i4uFj33nuvtm/frsaNG+vLL7/UjBkzNGrUKH300Uc6duyYbrzxRn/XDSBcdOzoPmh420PKW82be/d9dbXWhr+vD7Awj29RXXXVVTpx4oQGDx6sdu3aKS4uTm3btpVU1lyzXbt2uvTSS/X444/rxIkTfisYQJhJSyt7m+jCh3dr00PKW4MGVX6LqlxkZNn3ntbq7nZXRETlt6jK9/HB9fHAMcKVVw8ZX3/99ercubPi4uIkSV27dpUkXXHFFfr5z3+uzZs369JLL9WKFSt8XymA8FTeQ6pnTykxsewXf2Ji2Wd/v0Jd3g8qNfWnmRmbrezzha+I11TrmDFVH2fcOOmBB/x6ff68VeVpfyv6YCHQPOpFVa558+Y6/L+3BtauXasxY8Zo69ativ9fbyfDMFzb9+3b55eCa4teVAh29KKCP/lzFoeVjOFPfu1FVa5evZ8mfLp3765rrrlGd955p2vGxmazqU+fPiosLPTmsAAAP/PnrSrCC4KRR7eoiouLtWvXLhUVFSkrK0vnzp1TTEyMFi9erOLiYj333HMVxtt8+ZAdAMAneKsK4cSjGZyTJ0/qpptuUm5urnr06KGlS5dq5cqVioyM1JVXXqnHHntMp0+fVlRUlLKzs1W/fn1/1w0AAOCWRwGnSZMmysnJUWpqqg4dOiS73a6PPvpIERERuvTSSzVkyBD97W9/07hx49S4cWPNnj3b33UDCHaBaJB56pS0YIF0+vRP25KTy95uysio3NiyTx9pzZqqG15KVTfV7NdP2r278nV06CB9/bXn2wPRGNQDvFWFcOHVQ8YtWrTQwYMHK203DEMdOnTQY489poEDB/qyPp/hIWMEO0s9ZFxV00npp1efffF20KlT0l//WrdjlIuIKKvNXd+pC9lsZfu4e328pMR/1+0jhByEito+ZOzxa+ILFizQ2bNntWzZMuXm5uqdd95xfWez2fTwww9rw4YN3lUNwGVpn55ml+A7njTIrKsFC+p+jHIlJZ6HG6nsOqprwunP6wbgEY/fonrhhRdkt9v13HPPKScnR3/84x918OBBtWnTRpIUHR2tbt266b333tO5c+d0zz33+K1oAEHOkwaZde0Afv5tqVDgq+v2EW5Vweo8DjiZmZlKTU3Vli1bJEmtW7fWoEGDFBMTo86dO7vGlZaWqrCwkIADhDMzG2QGsyC7bkIOrMyrdXBKS0tdf3/TTTdp7dq16tu3r8aNG6ebb77Z58UBCFEJCZLDUf334ShcrxswgVetGhwX/AurU6dOWrBggYYNG6YzZ874tDAAISwQDTKTk+t+jEAK0saZrI0Dq/Iq4Hz99deVtt12223atGmTq10DACgtreytoQtDji8bZPryNnhERNnbT56y2dyPj4z073UD8IhXASc1NdWr7QDCVCAaZF58cVkDywtncpKTpREjqm5sOXKk+4aX7ppqjhkj3Xhj5esYO7by9htvLNtuRmPQOmAWB1bk1To4oYx1cBAKLLUWDkIODxwjGPl9HRwAAIBQQcABAEjiVhWsxavXxAHAFO76Wnnb96k2/bF81VMrEL25fIC1cWAVBBwAwa2qvlYOR1kzzQ0bKvZ9cjikTz+V9u6t/FCvu+O4G1/bfby5Bm+PA8Bj3KICENzc9bWSvOv7VJv+WL7qqRWI3lw+xK0qWAEBB0Bwq66vlTvlfZ88PU5V42u7T1V8dZwAIuQg1BFwAAS32vZvunC/2vTH8lVPLXpzAQFHwAEQ3Grbv+nC/Wo6TlXf12af2owL0h5VzOIglBFwAAS36vpauVNV36fa9MfyVU+tQPTm8hNCDkIVAQdAcHPX10ryru9Tbfpj+aqnViB6cwGogFYNQBChVYMbrINjOtbGgVlq26qBgAMEEQIOghkhB2agFxUAAMD/EHAAAB7hgWOEElo1AFYQ4s93uPjqWRsAYY+AA4Q6q/Q5qu46Nmwoa8tQLhSvzyJoxolQwS0qINSFWJ8jt6q7jvPDzfnbQ+n6LIRbVQgFBBwg1IVgn6Mq+arnFACIgAOEPqv0OfJVzykEBLM4CHYEHCDUhWifo0p81XMKAUPIQTAj4AChLoT7HFXgq55TACACDhD6rNLnqLrriKzihc9Quz6LYhYHwYqAA4S6mJiyV6V79pQSE8t+8Scmln0OpVeoq7uOsWOlG28M7euzMEIOghHr4ABWEBMj9ehR9hPKqrsOK1wfgIBhBgcAUGfM4iDYEHAAAD5ByEEwIeAAAADLMfUZnFOnTumGG25QRkaGmjdvXuP49evX66GHHlJOTo6mTJmiCRMm+L9IINzk5UnLlkmHD5etFGyzSc2bS4MGVb3mjLfjfdkYlOacQYdeVQgWps3gnDx5Uv369dPhw4c9Gp+Tk6MBAwZo6NCh2rRpkxYuXKiMjAz/FgkE2NI+Pc0tIC9PeuEF6dChn9omGEbZ5xdeqLxqsLfjyxtqfvppWcNMw/ipcea8eWXfe8rdsTIyys7ti3MACFmmBZwhQ4ZoyJAhHo9fuHChLrvsMk2bNk2tW7fW9OnT9cYbb/ixQiAMLVtWdWNLqWz7smV1G+/LxqDujlV+7lBvPhrCeBYHwcC0gPPqq69q7NixHo/fsWOHbrrpJtn+twhY586d9fXXX7sd73Q65XA4KvwAqEFNM6oXfu/teF82BqU5Z1Aj5MBspgWcFi1aeDXe4XAoNTXV9TkxMVHHjx93O37GjBlKSkpy/aSkpNS6ViBs1BQYqpoV8Wa8LxuD0pwTQDVC5i2qyMhIxZz3cGBsbKzOnj3rdnx6errsdrvr5+jRo4EoEwhtNfWCqqqNgjfjfdkYlOacQY9ZHJgpZAJOw4YNlZOT4/qcl5en6Ohot+NjYmKUmJhY4QdADWp6m/HC770d78vGoDTnDAmEHJglZAJOp06dtPm8hwO3b9+uK664wsSKAAsaNKjqxpZS2fZBg+o23peNQd0dq/zcod58FECdBF3AcTgcKioqqrR9wIAB2rhxozIyMlRcXKyZM2eqb9++JlQIWFhCQlljy9TUnwKCzVb2eezYyrd3vB3vy8ag7o51441l5w715qMWwiwOzGAzDG9fQ/BxATabDh065Fror3nz5pozZ44GDhxYaezLL7+scePGKSkpSfHx8dqyZYsaN27s0XkcDoeSkpI0f+3HiouP9+EVAL712zWfml0C4BcsAIjaKChwaNSoJNntdq8eNzG9m/iF+aq6hf9Gjx6tPn36KCsrSz169OC5GgAAUKWgu0VVk1atWql///6EGwAIMdyqQiCFXMABAIQuQg4ChYADAAAsh4ADAAgoZnEQCAQcAEDAEXLgbwQcAABgOQQcAABgOQQcAIApuE0FfyLgAABMQ8iBvxBwAACmIuTAHwg4AADAcgg4AADTMYsDXyPgAACCAiEHvkTAAQAAlkPAAQAEDWZx4CsEHABAUCHkwBcIOAAAwHIIOACAoMMsDuqKgAMACEqEHNQFAQcAAFgOAQcAELSYxUFtEXAAAIDlEHAAAEGNWRzUBgEHAABYDgEHABD0mMWBtwg4QJBZ2qen2SUAQYmQA28QcAAAIYOQA08RcAAAgOUQcAAAIYVZHHiCgAMACDmEHNSEgAMAACyHgAMACEnM4qA6BBwAQMgi5MAdAg4AALAcAg4AIKQxi4OqEHAAACGPkIMLEXAAAIDlEHAAAIDlEHBgiiN5B/XHjcN0JO+g2aUAsAhuU+F8BByYYvGBN5V99rjePfCm2aUAsBBCDsoRcBBwhxzf6KucjZKkL3M26nDeAZMrAgBYDQEHAbfk27dVzxYhSapni9CSA/PMLQiApTCLA4mAgwArn70pNUokSaVGCbM4AHyOkAMCDgLq/NmbcsziAPAHQk54I+AgYC6cvSnHLA4AwNcIOAiYJd++Xe337zKLA8DHmMUJXwQcBMwPBd/X6XsAqA1CTniKNLsAhI9Z3VjzBgAQGMzgAAAsj1mc8EPAAQCEBUJOeDEt4OzevVudOnXSRRddpEmTJskwjBr36d+/v2w2m+unV69eAagUgUSPKgCAL5gScJxOp/r376+OHTsqMzNTe/bs0bx582rcb+vWrdq1a5dyc3OVm5ur5cuX+79YBBQ9qgD4E7M44cOUgLNy5UrZ7XbNmjVLLVu21DPPPKM33nij2n2OHTsmwzDUrl07JScnKzk5WfHx8QGqGIFAjyoAgK+YEnB27NihtLQ0xcXFSZLat2+vPXv2VLvPl19+qZKSEjVt2lTx8fEaMmSIcnNz3Y53Op1yOBwVfhDc6FEFIBCYxQkPpgQch8Oh1NRU12ebzaaIiIhqA8v+/fvVsWNHrV69WpmZmTp8+LCmTJnidvyMGTOUlJTk+klJSfHpNcC36FEFAPAlUwJOZGSkYmJiKmyLjY3V2bNn3e4zefJkrVy5Um3bttXVV1+t5557Tu+//77b8enp6bLb7a6fo0eP+qx++B49qgAEErM41mdKwGnYsKFycnIqbMvLy1N0dLTHx0hOTtbJkyfldDqr/D4mJkaJiYkVfhCc6FEFwAyEHGszJeB06tRJmzdvdn0+fPiwnE6nGjZs6HafwYMHV9jnq6++UpMmTSrNBCH00KMKAOBrpgSc7t27y263a/78+ZKkZ599Vr169VJERIQcDoeKiooq7dO+fXuNHz9eW7Zs0YoVKzRt2jSNHj060KXDD+hRBcAszOJYl83wZIU9P/jwww911113KSEhQSUlJVq/fr3atm2r5s2ba86cORo4cGCF8UVFRXrooYf03nvv6dJLL9W9996rKVOmKDLSs3ZaDodDSUlJmr/2Y8XxejmC3G/XfGp2CUBYebv5Y2aXADcKChwaNSpJdrvdq8dNTGu2OXDgQH3zzTfKzMxUt27ddMkll0gqu11VlaioKL3xxhs1rpcDAABgai+qK664Qrfffrsr3AAos7RPT7NLAMIKt6qsh2ab8Ji3faI+OvSeBq/pqY8Ovefxsbw9B72rAPgKIcdaCDjwmLd9ohYeeLXCXz05lrfnoHcVAF8i5FgHAQce8bZP1LKDC1VslL0NV2wUafmhRTUey9tz0LsKAOAOAQce8bZP1JJvK36/6LwZFnfH8v4c9K4C4HvM4lgDAQc18rZP1PmzN+XKZ3HcHevzE+u8Oge9qwD4EyEn9BFwUCNv+0RdOHtTbtGBN90e6619L3l5DnpXAQDcI+CgWt72iapq9qZcsVHk9linC3/0+Bz0rgIQCMzihDYCDqrlbZ8od7M3dVH5HPSuAgBUj4CDannbJ8rd7I0va6B3FYBAYRYndJnWqgGhYVY379aXeb/Pp/4p5Dze1gQACD/M4AAAUA1mcUITAQcAgBoQckIPAQcAAFgOAQce25z9me5ce7M2Z39WYbu7ppq1aYRJ80wAwYpZnNBCwIHHXt87RyVGiV7fO6fCdndNNWvTCJPmmQCCGSEndBBw4JGNJz7R6cIfJUmnC3/UF9kZktw31axNI0yaZwIAfIWAA4/M2/e3Cp/f3PtXSe6batamESbNMwGEAmZxQgMBBzU6f/am3OnCHzVnx5NVNtV8a+9LXjfCpHkmgFBCyAl+BBzU6MLZm3Ibf1hX5faPv1vqdSNMmmcCCDWEnOBGwEG1qpq9qZnhVSNMmmcCAHyNgINquZu9qa2qGmHSPBNAqGIWJ3gRcFCtM8V5Pj1eVY0waZ4JIJQRcoITzTZRrUW91vr9HDTPBAD4GjM4AADAcgg4AADUEbepgg8Bx+Jq09vJXc+p+XvnavCanpq/d26F7Y98MVKD1/TUI1+MrLB9+pZxGrymp6ZvGVfpHC/tfFaD1/TUSzufrVO99K4CECwIOcGFgGNxtent5K7n1D+/e7fCX8sdzN9X4a/l9ti3V/jr+T7NXlXhr7Wtl95VAICqEHAsrDa9ndz1nHoj60VJxv9GGXpr70uSpAmfj6iw/8NfPCBJmrL5DxW2P7rlj66/n73jyQrfvbDzqVrVS+8qAMGGWZzgQcCxsNr0dnLXc2rl0Q8qbP/4u6WSpO/OVLw1dCT/W0nSfsd/KmzfZ9/t+vvPL1gBeUP2v2tVL72rAAQjQk5w4DVxizp/dkOquCpw84RWVe7jrufUU5mT9NPsTTlD93/Sv8rjDF3bp8rtj275oxrFXlrld09vfUTbTn3pcb21uT4AQPhgBseiatPbyd2qxdt//KrK7fklVS8CWGQUVrl9n313pdmbcttOfelVvfSuAhDMmMUxHwHHgmrT26l2Pad8y9N66V0FIBQQcsxFwLGg2vR28nXPKV+6sF56VwEAakLAsaDa9Hbydc8pX7qw3nDpXbW0T0+zSwBQR8zimMdmGMaFT49aksPhUFJSkuav/Vhx8fFmlwN45LdrPjW7BAA+8Hbzx8wuIWQVFDg0alSS7Ha7EhMTPd6PGRwAAPyMmZzAI+AAAADLIeCEMV/1cXLXu8rddgAIR8ziBBYBJ4z5qo+Tu95V7rYDAOBvBJww5as+Tu56V7nbDgDhjFmcwCHghClf9XFy17vK3XYAAAKBgBOGLlwJuLYrALvrXfVm1l+r3M4sDgAwixMoBJww5Ks+Tu5WP/7X0WVVbmcWBwDKEHL8j4ATZnzVx6n63lVVrx3JLA4AIFAIOGHGV32catu7ilkcACjDLI5/EXDCjK/6ONW2d1Uw97wCgEAj5PhPpNkFILBmdavbmjflFvVa65PjAADgD8zgAABgImZx/IOAAwCAyQg5vmdawNm9e7c6deqkiy66SJMmTZJhVP3mzfnWr1+vq6++Wo0aNdKsWbMCUCUAAAhFpgQcp9Op/v37q2PHjsrMzNSePXs0b968avfJycnRgAEDNHToUG3atEkLFy5URgavHAMArIFZHN8yJeCsXLlSdrtds2bNUsuWLfXMM8/ojTfeqHafhQsX6rLLLtO0adPUunVrTZ8+vcZ9AAAIJYQc3zEl4OzYsUNpaWmKi4uTJLVv31579uypcZ+bbrpJNptNktS5c2d9/fXXfq8VAIBAIuT4himviTscDqWmpro+22w2RUREKDc3VxdddJHbfdq0aeP6nJiYqOPHj7s9h9PplNPpdH222+2SpIIzZ+taPhAwjnPnzC4BgAkKChxmlxA0yv8sPHlW93ymBJzIyEjFxMRU2BYbG6uzZ8+6DTgX7lM+3p0ZM2boiScqp+CRA39Xy6oBAAiUZ80uIOicOnVKSUlJHo83JeA0bNhQu3fvrrAtLy9P0dHR1e6Tk5Pj8fj09HRNmDDB9bm0tFRHjhzRddddp6NHjyoxMbEOVxA6HA6HUlJSwuqaJa6b6w4PXDfXHQ7sdruaNWumhg0berWfKQGnU6dOev31112fDx8+LKfTWW3xnTp10qJFi1yft2/friuuuMLt+JiYmEqzRPXqlT1ylJiYGFb/55DC85olrjvccN3hhesOL+W/wz0e76c6qtW9e3fZ7XbNnz9fkvTss8+qV69eioiIkMPhUFFRUaV9BgwYoI0bNyojI0PFxcWaOXOm+vbtG+jSAQBACDDtGZxXX31Vd911lyZNmqSSkhKtX79eUtkbVXPmzNHAgQMr7NOoUSM9//zz6tu3r5KSkhQfH89r4gAAoEqmNdscOHCgvvnmG2VmZqpbt2665JJLJJXdrnJn9OjR6tOnj7KystSjRw+vp+hiYmL02GOPVbp1ZWXheM0S1811hweum+sOB7W9bpvh7XtXAAAAQY5mmwAAwHIIOAAAwHIIOICFnDp1Sl988YVOnjxpdikAYCoCjsWdOnVKqamp1T68bTXLly9XixYtFBkZqS5duigrK8vskgJi8eLFatWqlf7whz+oWbNmWrx4sdklBdwtt9yiefPmmV1GQIwZM0Y2m83106pVK7NLCqjJkyerf//+ZpcREPPmzavwv3X5j9X/v75gwQI1a9ZMDRo0UK9evbz/PWaEgV27dhk33HCDkZycbEycONEoLS01u6SAyMnJMdLS0gxJxqFDh8wuJyAOHDhgXHTRRca7775rZGdnG7/73e+Mbt26mV2W3+Xm5hqNGjUydu3aZRiGYcyfP99o1qyZyVUF1j/+8Q9DkvHWW2+ZXUpAdO3a1fj444+N3NxcIzc313A4HGaXFDC7du0yEhISjAMHDphdSkA4nU7X/865ubnG0aNHjUaNGhnffvut2aX5zYEDB4yUlBRj69atxpEjR4wRI0YYPXr08OoYlp/BcTqd6t+/vzp27KjMzEzt2bPH8qm33JAhQzRkyBCzywiorKwsPfPMM7rjjjvUuHFjjRo1SpmZmWaX5Xd5eXmaM2eO2rVrJ0m69tprlZuba3JVgfPjjz/q4Ycf1s9//nOzSwmI4uJi7d69W927d1dycrKSk5OVkJBgdlkBYRiGRo4cqXHjxqlly5ZmlxMQ0dHRrv+dk5OTNX/+fA0aNEgtWrQwuzS/2bZtm9LS0tShQwc1a9ZMw4cP1/79+706huUDzsqVK2W32zVr1iy1bNlSzzzzTNgsEPjqq69q7NixZpcRUP369dNDDz3k+rxv376wmLpPSUnRsGHDJElFRUWaOXOmBg0aZHJVgfPwww/rN7/5jdLS0swuJSB27twpwzB03XXXqX79+rrlllv03XffmV1WQLz22mvavn27UlNTtWLFiipXvreyc+fO6YUXXlB6errZpfhVmzZttG7dOm3btk12u11/+9vf1Lt3b6+OYfmAs2PHDqWlpSkuLk5S2UrJe/bsMbmqwLByuvdEYWGhZs6cqdGjR5tdSsDs2LFDjRs31po1azRnzhyzywmIjIwMffLJJ3ruuefMLiVgsrKy1LZtWy1atEh79uxRVFSURo4caXZZfpefn6+pU6eqdevWOnbsmGbNmqXu3bvr3LlzZpcWMO+8847S0tLUvHlzs0vxqzZt2mjw4MHq0KGDkpOTtWXLFs2cOdOrY1g+4DgcDqWmpro+22w2RUREhNX0fbiaOnWqGjRooAcffNDsUgKmffv2+uSTT9S2bVsNHz7c7HL87ty5cxo5cqReeeWVsGo+OGzYMG3evFmdOnVSamqqXnrpJa1Zs0YOh8Ps0vxq2bJlOnPmjNatW6dp06ZpzZo1On36tKuvYTiYO3duhVlqq9q8ebM++ugjbdmyRXl5eRo6dKhuvfVWGV6sTWz5gBMZGVlpeefY2FidPXvWpIoQCGvXrtXcuXP1zjvvKCoqyuxyAsZms+n666/XvHnztHz5cssH+b/85S/q1KmTbrvtNrNLMVVycrJKS0t14sQJs0vxq2PHjqlLly5q2LChpLJ/v7dv316HDh0yubLAOHDggA4cOKBevXqZXYrfvfvuuxoyZIg6d+6sBg0a6KmnntLBgwe1Y8cOj49h+YDTsGFD5eTkVNiWl5en6OhokyqCvx08eFDDhg3TK6+8ojZt2phdTkCsW7dOkyZNcn2OjCxrM1evnrX/EX/nnXe0fPly18OX77zzjkaPHm3525ITJkzQkiVLXJ+/+uor1atXTykpKSZW5X8pKSkqKCiosO3IkSO68sorTaoosJYsWaJ+/fqFxX+0FRcX64cffnB9zsvL05kzZ1RSUuLxMUxrthkonTp10uuvv+76fPjwYTmdTtd/AcBaCgoK1K9fPw0cOFC333678vPzJUnx8fGy2WwmV+c/V111lQYOHKjWrVvr17/+taZOnao+ffooKSnJ7NL8asOGDSouLnZ9njhxotLS0nT//febV1QAXHfddXr00UfVpEkTFRcXa8yYMbr//vtdzxpa1W233aYxY8Zo7ty56tevn5YtW6bt27frlltuMbu0gFi1alVY3HqWpF/84hcaMWKEZs+ercaNG+v1119X48aN1b59e88P4ofX14NKUVGRcckllxhvv/22YRiGMXLkSKNfv34mVxVYCqN1cD744ANDUqWfcLj+VatWGVdffbWRkJBgDB482Pjvf/9rdkkBd99994XNOjiTJ082kpOTjZSUFONPf/qTkZ+fb3ZJAbFp0yajW7duRv369Y3U1FTjgw8+MLukgDh79qwRHR1tZGVlmV1KQJSWlhqPP/640axZMyMqKsq4/vrrjczMTK+OERbdxD/88EPdddddSkhIUElJidavX6+2bduaXRYAAPCTsAg4knT8+HFlZmaqW7duuuSSS8wuBwAA+FHYBBwAABA+rP2KBQAACEsEHAAAYDkEHAAAYDkEHAAAYDkEHACmOXHihAoLCyttNwyj0grkF/J39+xPP/1Uhw8f9us5APgPAQdAwHTs2LFCY8RrrrlGWVlZlcbt3btXt956a4Vl2Q3D0Oeff67PPvtMdrtdvXv3VmZmZpXnefrpp3XHHXdU2PbNN9/oxhtv1Pfff+9RrbNnzw6rDuWA1Vi+VQMA8xw8eFAdOnRQQkKCIiIilJ2drYkTJ2r69OmSpNzcXN16662KioqSYRgqKCjQtm3b9OOPP6pr167697//rcLCQr311lvat2+fIiMjNWTIEHXr1k0LFizQ6dOn5XQ6KzXUjYmJqdBv7r///a9uu+02dejQQY0aNapU5/PPP6+ZM2dWOE5BQYEKCwu1cuVKSVJRUZHy8/P1448/KiIiwh9/XAB8iIADwG9atGih06dPuz536tRJjzzyiH73u99Jkho1aqTVq1erXbt2rjFbtmzRhx9+qLi4OK1YsUIXXXSRmjVrpri4OF1//fU6deqUfvnLXyoyMlIlJSUqLS3Vli1b3NaQk5Oj3r17q1u3bnrzzTerbEBaXFys3/zmN3r55ZdVWFioJUuWaMiQIYqMjJTT6dRrr72mkSNHhkWTQ8AquEUFIGAeeOAB3XTTTZKk06dPa+nSpWrRokWFMe3atdOxY8f0l7/8RSdOnFBiYqLru4iICPXu3VsXX3yxPvroI7Vo0UJ/+ctf3J5v//79+sUvfqG0tDS99dZb1XZXt9lsrlmbe+65xzW2pKREY8aMUWlpqc6dO1eXywcQQAQcAAGxbt06/fGPf3Td8nn66ae1cuVKxcXF6dy5c1qzZo2kss7v11xzjdauXasTJ06oV69erk7w0dHRKiws1K9//WutWrVKe/bsUa9evSRJTqdTZ86c0blz51RcXKzS0lIlJibq7rvv1gsvvCCn06lz587p3LlzOnv2rKvTvFT2fE9UVJR69+6trl27SpI6dOig6667zvW5c+fO6tChg/Ly8gL2Zwag9rhFBcDvvvrqK/3mN7/RtGnTdPfdd0uS63mX4uJi3XPPPdqxY4c2bNigzZs3a+XKlXr77bdVUlKiF198URdddJEMw1B8fLzee+897dq1SwUFBa5neFatWqW5c+dq0qRJio6OVlFRkUpLS/XPf/5TxcXFevLJJxUbG+uqp6ioSDfffLP+9a9/SZLOnTunmJgYbdy4UWfPnlV8fLzef/99SVJhYaHatm2rbdu2VTsDBCC48E8rAL/6+OOP1adPH0VHR6tt27YVvit/+PfMmTPKzMxU48aNdfvtt2vDhg1KSEjQ7t27NXr0aNezL5dccok6d+6sLVu2qE+fPpo9e7ZWrVolSRo7dqwKCwuVn5+vp59+Wnfeeafy8/O1ceNGNWnSRLm5ucrPz1d+fr6cTqcr3EjSmTNnKjx8PHLkSM2cOVMzZ87Uiy++qJEjR6q4uDgAf1oAfIWAA8BvDh48qOHDh2vJkiXq0qWLa3tpaamOHTumefPmqUePHlqxYoXrWZtjx45p6dKlstvt+uc//6l169apYcOGkqSWLVtq165drrBhGIacTme1Ndxwww1KSUnRnDlz3I45ceKELr/8cj366KO69tpr9cknn2jz5s2un4yMDE2bNq2OfxoAAomAA8BvWrRooW+//Va9e/eWVHY7asGCBerQoYPef/99jR8/XlOmTKlw6yc/P1//+c9/lJeXp7179+rLL7/UVVddJUn62c9+pm3btulPf/qTFi1apGnTpum3v/1ttTXk5eVp9uzZeuKJJ7Ru3boqxxw4cEBNmzbV008/raysLCUnJ+u5557T9u3b9fe//12FhYV65JFHfPSnAiAQCDgA/CohIcH19xEREfr66681ffp0jRs3rsJr16Wlpdq0aZOuuuoqjRw5UikpKZo+fboKCgp0/fXXyzAMPfnkk7ryyit1zz33aOjQoXrqqae0YsUKt+deunSpWrZsqcLCQs2YMUP9+/fXm2++WWGMw+HQzp071bFjR0lSZGSkFixYoIceekgvvvii7rrrLi1ZskQXX3yxj/9kAPgTAQdAQJSWlqq0tFSzZ8/WoEGDJEnZ2dkyDEOS9O9//1s333yz8vPz9fzzz2vYsGHas2ePHA6HfvjhB61du1aLFi1S165dNXHiRJWWlro918mTJ/XBBx/o/vvv18SJE9W1a1eNGTNGL7zwgv70pz8pLS1NmzdvliS9+eab+tWvfqUGDRpIKlvg79ChQ7riiis0fvx4NWrUSPv27dN//vMf/fjjj656AQQ3Ag6AgCh/Tbvcr371K33++edKTU1V8+bN9Yc//EFPPfWUsrOz9fnnn2v06NGy2+164okn1Lp1a2VkZGjTpk0aOXKkXnzxRRUWFrp9/ubIkSNq3769/vOf/+iRRx5xzRT9/ve/d83WXHvttZLK3pIaO3as3n//fbVp00bXXXedlixZoqlTpyovL0/p6en67LPPNHToUDVu3Fhjx471/x8WgDqzGfznCACLcTgciomJqdTCoTrlb2CVP9BclaKiIpWUlFR45RxAcCLgAAAAy+EWFQAAsBwCDgAAsBwCDgAAsBwCDgAAsBwCDgAAsBwCDgAAsBwCDgAAsBwCDgAAsJz/Dxpat2Lv13AgAAAAAElFTkSuQmCC",
      "text/plain": [
       "<Figure size 640x480 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "import matplotlib.pyplot as plt\n",
    "from matplotlib.colors import ListedColormap\n",
    "import numpy as np\n",
    "N,M=500,500\n",
    "t1=np.linspace(0,8,N)\n",
    "t2=np.linspace(0,3,M)\n",
    "x1,x2=np.meshgrid(t1,t2)\n",
    "x_new=np.stack((x1.flat,x2.flat),axis=1)\n",
    "y_predict=model.predict(x_new)\n",
    "y_hat=y_predict.reshape(x1.shape)\n",
    "iris_cmap=ListedColormap([\"#ACC6C0\",\"#FF8080\",\"#A0A0FF\"])\n",
    "plt.pcolormesh(x1,x2,y_hat,cmap=iris_cmap)\n",
    "plt.scatter(x[y==0,0],x[y==0,1],s=30,c='g',marker='^')\n",
    "plt.scatter(x[y==1,0],x[y==1,1],s=30,c='r',marker='o')\n",
    "plt.scatter(x[y==2,0],x[y==2,1],s=30,c='b',marker='s')\n",
    "plt.rcParams['font.sans-serif'] = 'Simhei'\n",
    "plt.xlabel('花瓣长度')\n",
    "plt.ylabel('花瓣宽度')\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "id": "86158ec4-130c-4ffc-8d97-659587e8c68e",
   "metadata": {},
   "outputs": [],
   "source": []
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "id": "bbcfd8f0-87e8-4acf-acad-04a349ee96ea",
   "metadata": {},
   "outputs": [],
   "source": []
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "id": "96c8ef1b-786e-40ec-8582-91550588909a",
   "metadata": {},
   "outputs": [],
   "source": []
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Python 3 (ipykernel)",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.12.4"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 5
}
